package com.jt.controller;

import com.jt.mapper.UserMapper;
import com.jt.pojo.User;
import com.jt.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author Amos
 * @date 2021/10/29
 */

@RestController
@CrossOrigin
@RequestMapping("/vue")
public class VueController {

    @Autowired
    private UserService userService;

    /**
     * 需求：查询所有的用户数据
     * URL: http://localhost:8080/vue/findAll
     * 返回值：null
     * 返回值：List<User>
     */
    @GetMapping("/findAll")
    public List<User> findAll() {
        return userService.findAll();
    }

    /**
     * 业务： 实现用户入库
     * URL: http://localhost:8080/vue/saveUser
     * 参数： User对象的JSON
     * 返回值： 成功信息
     */
    @PostMapping("/saveUser")
    public String saveUser(@RequestBody User user) {
        userService.saveUser(user);
        return "入库成功!!!";
    }

    /**
     * 业务： 实现用户删除
     * URL: http://localhost:8080/vue/deleteUser?id=XXX
     * 参数：用户id
     * 返回值： 成功信息
     */
    @DeleteMapping("/deleteUserById")
    public String deleteUser(Integer id) {
        userService.deleteById(id);
        return "删除用户成功!!!";
    }

    /**
     * 业务：实现用户修改
     * URL: http://localhost:8080/vue/updateUserToDB
     * 参数：RequestBody
     * 返回值：成功信息
     */
    @PutMapping("/updateUserToDB")
    public String updateUserToDB(@RequestBody User user) {
        userService.updateUser(user);
        return "修改用户成功!!!";
    }
}
